// 处理权限路由的模块
import {constantRoutes,aysncRoutes} from '@/router'  // 静态路由
// console.log(...aysncRoutes)
const state = {
  // 一开始的静态路由
  routes:constantRoutes // 路由表,表示用户拥有的所有路由表
}
const mutations = {
  setRoutes(state,newRoute){
    state.routes = [...constantRoutes,...newRoute]
  }
}
const actions = {
  filterRoutes(context,menus){
    const routes = []
    // 筛选出动态路由的menus中能够对上的路由
    menus.forEach(key => {


      routes.push(...aysncRoutes.filter(item => item.name === key))
      // debugger
    })
    // 得到的routes是所有模块中满足权限的动态数组
    context.commit('setRoutes',routes) // 这里显示左侧菜单
    return routes // 这里是给addRoutes用的
  }
}

export default {
  namespaced:true,
  state,
  mutations,
  actions
}
